#ifndef CHAT_H
#define CHAT_H

#include <QObject>
#include <QDateTime>
#include <QVector>
#include <QDebug>

// 发送的消息
struct Message{
    // 发送者、接收者
    QString sId, rId;
    // 发送时间
    QDateTime time;
    // 发送的内容种类及内容
    enum {MESSAGE, PICTURE, VOICE, FILE} type;
    union content{
        QString message;
        // 先整个文字的，其他类型再说
    };
};

class Chat : public QObject
{
    Q_OBJECT
    // 聊天的id
    QString id;
    // 未读消息个数
    int cntUnread;
    // 聊天所有信息
    QVector<Message> messages;
public:
    explicit Chat(QObject *parent = nullptr);
    // 接收消息
    void Receive(Message msg);
    QVector<Message> getMessages();
    // 处理未读消息
    void ClearUnread();
    int GetUnread();
signals:

};

#endif // CHAT_H
